This relates to graphics processing and particularly to Multi-sampled Antialiasing.
Straight edges may exhibit “aliasing” or a stair-stepped appearance because displays only have a finite number of pixels. There are a number of known anti-aliasing techniques to reduce this effect and improve visual quality.
The most fundamental anti-aliasing technique is supersampling anti-aliasing where, during rasterization of geometric primitives, each pixel is sampled at multiple locations. When all primitives have been drawn, the average color value of each pixel's color samples will be used as that pixel's color. The production of this final single-sampled image is referred to as the resolve step.
Multi-sampled anti-aliasing (MSAA) improves the efficiency of this technique at the expense of some visual quality by producing identical color samples for all sample locations within a pixel if they belong to the same geometric primitive. Only within pixels along edges and corners of primitives will the color samples be different for different sampling locations as samples may belong to different primitives.
Samples may be stored in memory in a number of layouts, including, but not limited to, plane separated, where there is one image sized memory buffer per sample plane, or interleaved, where samples are interleaved on a per pixel basis, or block interleaved, where an image is made up from multiple smaller pixel blocks or tiles and where sample planes may be separated within each such block.
Regardless of the physical memory address layout of the sample planes, there may exist a mapping such that sample planes may still be treated as separate logical buffers. For example, if sample planes are stored in a block interleaved fashion a page table may be used to map the discontiguous memory blocks that make up a sample plane into a contiguous virtual address range. Therefore, the use of the word “buffer” shall not be restricted to a contiguous memory block but may apply to a sample plane of any memory layout without restriction.
In addition to the sample buffers there may exist an index buffer that designates which color buffer is used for each subsample. When present, this allows multiple samples to share the same color buffer if they have the same color. This is called a compressed layout herein.